<?php

/**
 * Generated Model class.
 */
class Base_PhotoRow extends Db_Row
{

    /**
     * Set new value for photo.id column in current Row.
     * 
     * @param int $IdFromPhotoRow
     * @return void
     */
    public function setId($Id)
    {
        $this->__set("id", $Id);
    }

    /**
     * Return photo.id column value in current Row.
     * 
     * @return int
     */
    public function getId()
    {
        return $this->__get("id");
    }

    /**
     * Set new value for photo.profile_id column in current Row.
     * 
     * @param int $ProfileIdFromPhotoRow
     * @return void
     */
    public function setProfileId($ProfileId)
    {
        $this->__set("profile_id", $ProfileId);
    }

    /**
     * Return photo.profile_id column value in current Row.
     * 
     * @return int
     */
    public function getProfileId()
    {
        return $this->__get("profile_id");
    }

    /**
     * Return parent row from table profile where photo.profile_id = profile.id
     * 
     * @param Db_Select $selectFromProfile
     * @return ProfileRow
     */
    public function getProfileRowByProfileId($select = null)
    {
        return $this->findParentRow('ProfilePeer', null, $select);
    }

    /**
     * Set new value for photo.name column in current Row.
     * 
     * @param varchar $NameFromPhotoRow
     * @return void
     */
    public function setName($Name)
    {
        $this->__set("name", $Name);
    }

    /**
     * Return photo.name column value in current Row.
     * 
     * @return varchar
     */
    public function getName()
    {
        return $this->__get("name");
    }

    /**
     * Set new value for photo.total_views column in current Row.
     * 
     * @param int $TotalViewsFromPhotoRow
     * @return void
     */
    public function setTotalViews($TotalViews)
    {
        $this->__set("total_views", $TotalViews);
    }

    /**
     * Return photo.total_views column value in current Row.
     * 
     * @return int
     */
    public function getTotalViews()
    {
        return $this->__get("total_views");
    }

    /**
     * Set new value for photo.created column in current Row.
     * 
     * @param timestamp $CreatedFromPhotoRow
     * @return void
     */
    public function setCreated($Created)
    {
        $this->__set("created", $Created);
    }

    /**
     * Return photo.created column value in current Row.
     * 
     * @return timestamp
     */
    public function getCreated()
    {
        return $this->__get("created");
    }

    /**
     * Set new value for photo.is_approved column in current Row.
     * 
     * @param tinyint $IsApprovedFromPhotoRow
     * @return void
     */
    public function setIsApproved($IsApproved)
    {
        $this->__set("is_approved", $IsApproved);
    }

    /**
     * Return photo.is_approved column value in current Row.
     * 
     * @return tinyint
     */
    public function getIsApproved()
    {
        return $this->__get("is_approved");
    }

    /**
     * Set new value for photo.url column in current Row.
     * 
     * @param varchar $UrlFromPhotoRow
     * @return void
     */
    public function setUrl($Url)
    {
        $this->__set("url", $Url);
    }

    /**
     * Return photo.url column value in current Row.
     * 
     * @return varchar
     */
    public function getUrl()
    {
        return $this->__get("url");
    }

    /**
     * Set new value for photo.visible column in current Row.
     * 
     * @param tinyint $VisibleFromPhotoRow
     * @return void
     */
    public function setVisible($Visible)
    {
        $this->__set("visible", $Visible);
    }

    /**
     * Return photo.visible column value in current Row.
     * 
     * @return tinyint
     */
    public function getVisible()
    {
        return $this->__get("visible");
    }

    /**
     * Set new value for photo.rating column in current Row.
     * 
     * @param float $RatingFromPhotoRow
     * @return void
     */
    public function setRating($Rating)
    {
        $this->__set("rating", $Rating);
    }

    /**
     * Return photo.rating column value in current Row.
     * 
     * @return float
     */
    public function getRating()
    {
        return $this->__get("rating");
    }

    /**
     * Return dependent rowset from table Event where Event.PhotoId reference to photo
     * table
     * 
     * @param Db_Select $select FromEvent
     * @return Zend_Db_Table_Rowset_Abstract
     */
    public function getEventRowsetByPhotoId($select = null)
    {
        return $this->findDependentRowset('EventPeer', null, $select);
    }

    /**
     * Return dependent rowset from table News where News.PhotoId reference to photo
     * table
     * 
     * @param Db_Select $select FromNews
     * @return Zend_Db_Table_Rowset_Abstract
     */
    public function getNewsRowsetByPhotoId($select = null)
    {
        return $this->findDependentRowset('NewsPeer', null, $select);
    }

    /**
     * Return dependent rowset from table Photo2gallery where Photo2gallery.PhotoId
     * reference to photo table
     * 
     * @param Db_Select $select FromPhoto2gallery
     * @return Zend_Db_Table_Rowset_Abstract
     */
    public function getPhoto2galleryRowsetByPhotoId($select = null)
    {
        return $this->findDependentRowset('Photo2galleryPeer', null, $select);
    }

    /**
     * Return dependent rowset from table Profile where Profile.PhotoId reference to
     * photo table
     * 
     * @param Db_Select $select FromProfile
     * @return Zend_Db_Table_Rowset_Abstract
     */
    public function getProfileRowsetByPhotoId($select = null)
    {
        return $this->findDependentRowset('ProfilePeer', null, $select);
    }

    /**
     * Return many2many rowset from table PhotoGallery via Photo2gallery.gallery_id
     * 
     * @param Db_Select $select From PhotoGallery
     * @return Zend_Db_Table_Rowset_Abstract
     */
    public function getPhotoGalleryRowsetByPhoto2gallery($select = null)
    {
        return $this->findManyToManyRowset(PhotoGalleryPeer::getInstance(), Photo2galleryPeer::getInstance(), null, null, $select);
    }


}

